home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #2
/
Monster Media No. 2 (Monster Media)(1994).ISO
/
pcboard
/
bcmx120.zip
/
MX.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-07-10
|
31KB
|
1,854 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
Boolean BOOLEAN003
Boolean BOOLEAN004
Boolean BOOLEAN005
Boolean BOOLEAN006
Boolean BOOLEAN007
Boolean BOOLEAN008
Boolean BOOLEAN009
Boolean BOOLEAN010
Boolean BOOLEAN011
Boolean BOOLEAN012
Boolean BOOLEAN013
Boolean BOOLEAN014
Boolean BOOLEAN015
Boolean BOOLEAN016
Boolean BOOLEAN017
Boolean BOOLEAN018
Boolean BOOLEAN019
Boolean BOOLEAN020
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
Integer INTEGER014
Integer INTEGER015
Integer INTEGER016
Integer INTEGER017
Integer INTEGER018
Integer INTEGER019
Integer INTEGER020
Integer INTEGER021
Integer INTEGER022
Integer INTEGER023
Integer INTEGER024
Integer INTEGER025
Integer INTEGER026
Integer INTEGER027
Integer INTEGER028
Integer INTEGER029
Integer INTEGER030
Integer INTEGER031
Integer INTEGER032
Integer INTEGER033
Integer INTEGER034
Integer INTEGER035
Integer INTEGER036
Integer INTEGER037
Integer INTEGER038
Integer INTEGER039
Integer INTEGER040
Integer INTEGER041
Integer INTEGER042
Integer INTEGER043
Integer INTEGER044
Integer INTEGER045
Integer INTEGER046
Integer INTEGER047
Integer INTEGER048
Integer INTEGER049
Integer INTEGER050
Integer INTEGER051
Integer INTEGER052
Integer INTEGER053
Integer INTEGER054
Integer INTEGER055
Integer INTEGER056
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String TSTRING007(6)
String STRING008
String TSTRING009(1)
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String STRING031
String STRING032
String STRING033
String STRING034
String STRING035
String STRING036
String STRING037
String STRING038
String STRING039
String STRING040
String STRING041
String STRING042
String STRING043
String STRING044
String STRING045
String STRING046
String STRING047
String STRING048
String STRING049
String STRING050
String STRING051
String STRING052
String STRING053
String STRING054
String STRING055
String STRING056
String STRING057
String STRING058
String STRING059
String STRING060
String STRING061
String STRING062
String STRING063
String STRING064
String STRING065
String STRING066
String STRING067
String STRING068
String STRING069
String STRING070
String STRING071
String STRING072
String STRING073
String STRING074
String STRING075
String STRING076
String STRING077
String STRING078
Int TINT001(6)
Int TINT002(6)
Int INT003
Int INT004
Int INT005
Int INT006
Int INT007
Int INT008
Int INT009
Int INT010
Int INT011
Int INT012
Int INT013
Int INT014
Int INT015
Int INT016
;------------------------------------------------------------------------------
If (Upper(ReadLine(PCBDat(), 183)) == "-1") Then
BOOLEAN004 = 1
Else
BOOLEAN004 = 0
Endif
If (Upper(ReadLine(PCBDat(), 195)) == "-1") Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
STRING052 = PPEPath() + "mnutxt\mxmnu"
STRING041 = PPEPath() + "cfg\logon.cfg"
INT003 = 1
INT004 = 2
INT005 = 3
INT006 = 4
INT007 = 5
INT008 = 6
INT009 = 7
INT010 = 8
INT011 = 9
INT012 = 10
INT013 = 11
INT014 = 12
INT015 = 13
INT016 = 14
BOOLEAN020 = 0
STRING024 = PPEPath() + "external.cfg"
INTEGER049 = ReadLine(PCBDat(), 265)
STRING070 = String(PcbNode())
BOOLEAN013 = 0
BOOLEAN015 = 0
STRING035 = String(Carrier())
If (OnLocal()) STRING035 = "Local"
STRING010 = PPEPath() + "mx.cfg"
STRING062 = PPEPath() + "lightbar.cfg"
STRING011 = PPEPath() + "graph\mxtext"
STRING030 = PPEPath() + "graph\disc"
STRING031 = PPEPath() + "graph\dir"
If (LangExt() <> "") Then
If (BOOLEAN013) Then
PrintLn "Langext = " + LangExt()
Wait
Endif
If (Exist(STRING011 + LangExt())) STRING011 = STRING011 + LangExt()
Endif
STRING014 = PPEPath() + "unwanted"
STRING057 = PPEPath() + "work\mxlog." + String(STRING070)
STRING059 = PPEPath() + "graph\apply"
STRING060 = PPEPath() + "graph\address"
STRING061 = PPEPath() + "work\mxtmp." + String(STRING070)
STRING040 = PPEPath() + "work\infotmp." + String(STRING070)
STRING056 = PPEPath() + "graph\wel"
STRING055 = PPEPath() + "graph\mxs"
STRING064 = PPEPath() + "graph\doshlp"
STRING067 = PPEPath() + "dos.cfg"
STRING068 = ReadLine(STRING010, INT003)
STRING069 = ReadLine(STRING010, INT004)
STRING058 = ReadLine(STRING010, INT005)
INTEGER050 = ReadLine(STRING010, INT006)
INTEGER010 = ReadLine(PCBDat(), 149)
STRING021 = "@X0FL@X0Cigh@X04tbar@X0D/@X0FD@X0Cos @X0FM@X0Cat@X04rix @X0CPPE @X05v@X0D1.20 @X07φ═══── @X0FC@X0Dod@X05ed by @X08B@X07lac@X0FkCat @X07──═══φ"
Tokenize ReadLine(STRING010, INT008)
INTEGER003 = GetToken()
If (Upper(GetToken()) == "YES") Then
BOOLEAN008 = 1
Else
BOOLEAN008 = 0
Endif
INTEGER004 = GetToken()
If (Upper(GetToken()) == "YES") Then
BOOLEAN009 = 1
Else
BOOLEAN009 = 0
Endif
INTEGER005 = GetToken()
If (Upper(GetToken()) == "YES") Then
BOOLEAN010 = 1
Else
BOOLEAN010 = 0
Endif
INTEGER006 = GetToken()
If (Upper(GetToken()) == "YES") Then
BOOLEAN011 = 1
Else
BOOLEAN011 = 0
Endif
If (Upper(ReadLine(STRING010, INT009)) == "YES") Then
BOOLEAN014 = 1
Else
BOOLEAN014 = 0
Endif
If (Upper(ReadLine(STRING010, INT011)) == "YES") Then
BOOLEAN017 = 1
STRING073 = ReadLine(STRING010, INT012)
If (Exist(STRING073)) Goto LABEL001
If (Exist(PPEPath() + STRING073)) Then
STRING073 = PPEPath() + STRING073
Endif
:LABEL001
Else
BOOLEAN017 = 0
Endif
Tokenize ReadLine(STRING010, INT013)
INTEGER011 = GetToken()
INTEGER013 = GetToken()
Tokenize ReadLine(STRING010, INT014)
INTEGER021 = GetToken()
INTEGER022 = GetToken()
INTEGER023 = GetToken()
INTEGER024 = GetToken()
INTEGER025 = GetToken()
INTEGER016 = 0
INTEGER017 = 0
INTEGER018 = 0
INTEGER019 = 0
INTEGER020 = 0
Tokenize ReadLine(STRING010, INT015)
INTEGER026 = GetToken()
If (GetToken() == "YES") Then
BOOLEAN006 = 1
Else
BOOLEAN006 = 0
Endif
INTEGER053 = ReadLine(STRING024, 1)
If (INTEGER053 > 0) Then
Redim TSTRING007, 6 + INTEGER053
Redim TINT001, 6 + INTEGER053
Redim TINT002, 6 + INTEGER053
Redim TSTRING009, INTEGER053
INTEGER044 = 6 + INTEGER053
Else
INTEGER044 = 6
Endif
INTEGER046 = ReadLine(STRING062, 1)
STRING013 = ReadLine(STRING062, 2)
STRING071 = STRING013
INTEGER043 = 1
STRING053 = Chr(13)
STRING054 = Chr(27)
INTEGER007 = 0
BOOLEAN012 = 0
STRING039 = ReadLine(STRING011, 14)
If (Upper(STRING058) == "YES") Then
BOOLEAN016 = 1
FAppend 3, STRING057, 1, 0
FPutLn 3, "************************************************************"
FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") (" + STRING035 + ") (" + GrafMode() + ")"
Endif
If (AnsiOn()) Goto LABEL002
If (BOOLEAN016) Then
FPutLn 3, " No ansi, exiting"
FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abnormally"
Endif
Newline
PrintLn "No ansi capability, matrix exiting"
PrintLn "You can type in your name now to log in normally"
End
:LABEL002
If (LoggedOn()) Then
If (BOOLEAN016) Then
FPutLn 3, " Logged on user (", String(U_Name()), ") started matrix"
Endif
Endif
AdjTime INTEGER011
StartDisp 1
Select Case (Upper(ReadLine(STRING010, INT010)))
Case "DOS"
STRING074 = "dos"
Goto LABEL003
Case "LIGHTBAR"
STRING074 = "lightbar"
Goto LABEL007
INTEGER045 = Random(Time())
INTEGER045 = Random(1) + 1
Case 1
STRING074 = "dos"
Goto LABEL003
Case 2
STRING074 = "lightbar"
Goto LABEL007
End Select
:LABEL003
TSTRING007(1) = ReadLine(STRING067, 1)
TSTRING007(2) = ReadLine(STRING067, 2)
TSTRING007(3) = ReadLine(STRING067, 3)
TSTRING007(4) = ReadLine(STRING067, 4)
TSTRING007(5) = ReadLine(STRING067, 5)
TSTRING007(6) = ReadLine(STRING067, 6)
STRING066 = ReadLine(STRING067, 7)
STRING065 = ReadLine(STRING067, 8)
STRING072 = ReadLine(STRING067, 9)
Tokenize ReadLine(STRING067, 10)
If (Upper(GetToken()) == "YES") Then
INTEGER052 = 1
Else
INTEGER052 = 0
Endif
If (GetToken() == "YES") Then
DefColor
Cls
Endif
If (GetToken() == "YES") Then
BOOLEAN020 = 1
Endif
INTEGER028 = GetToken()
INTEGER048 = 2
For INTEGER045 = 1 To INTEGER053
TSTRING007(6 + INTEGER045) = ReadLine(STRING024, INTEGER048)
TSTRING009(INTEGER045) = ReadLine(STRING024, INTEGER048 + 1)
INTEGER048 = INTEGER048 + 2
Next
Newline
PrintLn STRING021 + " @X05[@X0DDos mode@X05]"
:LABEL004
STRING027 = ReadLine(STRING011, 51) + "_"
Newline
If (BOOLEAN020) Then
DispFile STRING031, 1 + 4
BOOLEAN020 = 0
Endif
STRING012 = ""
STRING017 = ""
InputText STRING027, STRING012, 1, 60
Tokenize STRING012
If (TokCount() > 0) Then
INTEGER047 = TokCount()
For INTEGER045 = 1 To INTEGER047
STRING017 = GetToken()
If (STRING017 <> "") Break
Next
If (INTEGER045 < INTEGER047) STRING017 = Upper(STRING012)
Endif
Select Case (Upper(STRING017))
Case "DIR"
DispFile STRING031, 1 + 4
Case "DIR/W"
DispFile PPEPath() + "graph\dirw", 1 + 4
Case Upper(TSTRING007(1))
SaveScrn
Gosub LABEL016
GetUser
DefColor
RestScrn
Case Upper(TSTRING007(2))
SaveScrn
Gosub LABEL020
DefColor
RestScrn
Case Upper(TSTRING007(3))
SaveScrn
Gosub LABEL011
GetUser
DefColor
RestScrn
Case Upper(TSTRING007(4))
SaveScrn
If (BOOLEAN016) FClose 3
AdjTime INTEGER013
If (INTEGER024 > 0) Then
Inc INTEGER019
If (INTEGER019 > INTEGER024) Then
If (BOOLEAN016) FPutLn 3, " Excessive feedback retries, exiting"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abormally"
Hangup
Endif
Endif
Call PPEPath() + "feedback.ppe"
DefColor
StartDisp 1
If (BOOLEAN016) FAppend 3, STRING057, 1, 0
AdjTime 0 - INTEGER013
RestScrn
Case Upper(TSTRING007(6)), "EXIT"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Normally (through quit)"
If (BOOLEAN013) Goto LABEL005
Newline
DefColor
If (INTEGER026 > 0) Then
INTEGER027 = Random(Time())
INTEGER027 = Random(INTEGER026 - 1) + 1
DispFile PPEPath() + "graph\off" + String(INTEGER027), 1 + 4
Endif
If (BOOLEAN006) Then
STRING051 = Upper(YesChar())
InputYN ReadLine(STRING011, 2), STRING051, 1
If (Upper(STRING051) <> Upper(YesChar())) Then
Newline
Goto LABEL004
Endif
Endif
If (LoggedOn()) End
Hangup
:LABEL005
Case Upper(TSTRING007(5))
If (BOOLEAN017) Goto LABEL006
Newline
If (BOOLEAN016) FPutLn 3, " PAGE selected but not allowed at " + String(Time())
PrintLn ReadLine(STRING011, 63)
Goto LABEL004
:LABEL006
SaveScrn
If (BOOLEAN016) FClose 3
If (INTEGER025 > 0) Then
Inc INTEGER020
If (INTEGER020 > INTEGER025) Then
If (BOOLEAN016) FPutLn 3, " Excessive page retries, exiting"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abormally"
Hangup
Endif
Endif
Call STRING073
StartDisp 1
DefColor
If (BOOLEAN016) FAppend 3, STRING057, 1, 0
RestScrn
Case Upper(STRING066)
Newline
PrintLn STRING021 + " @X05[@X0DDos mode@X05]"
Newline
Case Upper(STRING065)
Newline
DispFile STRING064, 1 + 4
Case Upper(STRING068)
BOOLEAN015 = 1
SaveScrn
Gosub LABEL016
GetUser
RestScrn
Case INTEGER052
Newline
DispFile PPEPath() + "graph\format", 1 + 4
STRING017 = ""
InputYN ReadLine(STRING011, 54) + "_", STRING017, 1
Newline
If (Upper(STRING017) == Upper(YesChar())) Then
PrintLn ReadLine(STRING011, 55)
INTEGER041 = GetX()
INTEGER042 = GetY()
STRING027 = ReadLine(STRING011, 56)
For INTEGER045 = 1 To 100
Print String(INTEGER045) + STRING027
Delay 4
AnsiPos INTEGER041, INTEGER042
Next
Newline
PrintLn ReadLine(STRING011, 52)
Delay 60
If (!BOOLEAN013) Hangup
Endif
Case "CLS"
DefColor
Cls
Case Else
For INTEGER045 = 1 To INTEGER053
If (Upper(STRING017) == Upper(TSTRING007(6 + INTEGER045))) Then
If (BOOLEAN016) FClose 3
Tokenize TSTRING009(INTEGER045)
Call GetToken()
If (BOOLEAN016) FAppend 3, STRING057, 1, 0
DefColor
StartDisp 1
Goto LABEL004
Endif
Next
If (STRING017 <> "") Then
Newline
Print ReadLine(STRING011, 53) + """" + STRING017 + """"
If (INTEGER028 <> 0) Then
Inc INTEGER029
If (INTEGER029 == INTEGER028) Then
If (BOOLEAN016) FPutLn 3, " Excessive dos command errors, exiting"
Hangup
Endif
Endif
Endif
Goto LABEL004
End Select
Goto LABEL004
:LABEL007
StartDisp 1
INTEGER047 = Random(Time())
INTEGER047 = Random(INTEGER046 - 1) + 1
DispFile STRING055 + String(INTEGER047), 1 + 4
If (Exist(STRING052 + String(INTEGER047) + LangExt())) Then
STRING052 = STRING052 + String(INTEGER047) + LangExt()
ElseIf (Exist(STRING052 + String(INTEGER047))) Then
STRING052 = STRING052 + String(INTEGER047)
ElseIf (Exist(STRING052 + LangExt())) Then
STRING052 = STRING052 + LangExt()
Endif
STRING063 = ReadLine(STRING062, 2 + INTEGER047)
Tokenize STRING063
STRING071 = GetToken()
BOOLEAN007 = 1
BOOLEAN018 = 0
If (STRING071 == "%D") Then
BOOLEAN007 = 0
BOOLEAN018 = 1
STRING071 = GetToken()
Endif
For INTEGER045 = 1 To INTEGER044
TINT001(INTEGER045) = GetToken()
TINT002(INTEGER045) = GetToken()
If (BOOLEAN007) Then
INTEGER051 = GetToken()
TSTRING007(INTEGER045) = ScrText(TINT001(INTEGER045), TINT002(INTEGER045), INTEGER051, 1)
Else
TSTRING007(INTEGER045) = ReadLine(STRING052, INTEGER045)
Endif
If (INTEGER045 > 6) Then
TSTRING009(INTEGER045 - 6) = ReadLine(STRING024, (INTEGER045 - 6) * 2 + 1)
Endif
Next
TSTRING009(INTEGER045) = ReadLine(STRING024, INTEGER048 + 1)
INTEGER043 = 1
INTEGER039 = 0
INTEGER040 = 0
If (BOOLEAN018) Then
For INTEGER045 = 1 To INTEGER044
AnsiPos TINT001(INTEGER045), TINT002(INTEGER045)
Print TSTRING007(INTEGER045)
Next
Endif
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print STRING071, StripAtx(TSTRING007(INTEGER043))
:LABEL008
STRING017 = Inkey()
If (((Upper(STRING017) == "A") || (STRING017 == "UP")) || (STRING017 == "LEFT")) Then
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print TSTRING007(INTEGER043)
If (INTEGER043 == 1) Then
INTEGER043 = INTEGER044
Else
INTEGER043 = INTEGER043 - 1
Endif
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print STRING071, StripAtx(TSTRING007(INTEGER043))
Goto LABEL008
ElseIf (((Upper(STRING017) == "Z") || (STRING017 == "DOWN")) || (STRING017 == "RIGHT")) Then
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print "@X0F", TSTRING007(INTEGER043)
If (INTEGER043 == INTEGER044) Then
INTEGER043 = 1
Else
INTEGER043 = INTEGER043 + 1
Endif
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print STRING071, StripAtx(TSTRING007(INTEGER043))
Goto LABEL008
Else
Select Case (STRING017)
Case "HOME"
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print "@X0F", TSTRING007(INTEGER043)
INTEGER043 = 1
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print STRING071, StripAtx(TSTRING007(INTEGER043))
Goto LABEL008
Case "END"
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print STRING071, StripAtx(TSTRING007(INTEGER043))
Print "@X0F", TSTRING007(INTEGER043)
INTEGER043 = INTEGER044
AnsiPos TINT001(INTEGER043), TINT002(INTEGER043)
Print STRING071, StripAtx(TSTRING007(INTEGER043))
Goto LABEL008
Case "?"
DefColor
INTEGER014 = GetX()
INTEGER015 = GetY()
AnsiPos 1, 23
SaveScrn
StartDisp 2
DispFile PPEPath() + "graph\lbhlp", 1 + 4
Wait
StartDisp 1
RestScrn
AnsiPos INTEGER014, INTEGER015
Goto LABEL008
Case ||, "1", String(INTEGER044)
If (STRING017 <> STRING053) INTEGER043 = STRING017
Select Case (INTEGER043)
Case 1
Gosub LABEL016
GetUser
Case 2
Gosub LABEL020
Case 3
Gosub LABEL011
GetUser
Case 4
If (BOOLEAN016) FClose 3
AdjTime INTEGER013
If (INTEGER024 > 0) Then
Inc INTEGER019
If (INTEGER019 > INTEGER024) Then
If (BOOLEAN016) FPutLn 3, " Excessive feedback retries, exiting"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abormally"
Hangup
Endif
Endif
Call PPEPath() + "feedback.ppe"
DefColor
StartDisp 1
If (BOOLEAN016) FAppend 3, STRING057, 2, 0
AdjTime 0 - INTEGER013
Goto LABEL007
Case 5
If (BOOLEAN017) Goto LABEL009
DefColor
Cls
If (BOOLEAN016) FPutLn 3, " PAGE selected but not allowed at " + String(Time())
PrintLn ReadLine(STRING011, 63)
Wait
Goto LABEL007
:LABEL009
If (BOOLEAN016) FClose 3
Call STRING073
If (BOOLEAN016) FAppend 3, STRING057, 2, 0
DefColor
StartDisp 1
Goto LABEL007
Case 6
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Normally (through quit)"
If (BOOLEAN013) Goto LABEL010
DefColor
Cls
If (INTEGER026 > 0) Then
INTEGER027 = Random(Time())
INTEGER027 = Random(INTEGER026 - 1) + 1
DispFile PPEPath() + "graph\off" + String(INTEGER027), 1 + 4
Endif
If (BOOLEAN006) Then
STRING051 = Upper(YesChar())
InputYN ReadLine(STRING011, 2), STRING051, 1
If (Upper(STRING051) <> Upper(YesChar())) Then
Goto LABEL007
Endif
Endif
If (LoggedOn()) End
Hangup
:LABEL010
Case 7
If (BOOLEAN016) FClose 3
Tokenize TSTRING009(INTEGER043 - 6)
Call GetToken()
If (BOOLEAN016) FAppend 3, STRING057, 1, 0
DefColor
StartDisp 1
Goto LABEL007
End Select
Goto LABEL007
Case Else
If (BOOLEAN013) If (STRING017 <> "") PrintLn STRING017
Goto LABEL008
Endif
End Select
:LABEL011
DefColor
Cls
If (BOOLEAN016) FPutLn 3, " CHECK_ACCESS selected at " + String(Time())
If (INTEGER023 > 0) Then
Inc INTEGER018
If (INTEGER018 > INTEGER023) Then
If (BOOLEAN016) FPutLn 3, " Excessive access check retries, exiting"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abormally"
Hangup
Endif
Endif
STRING042 = PPEPath() + "cfg\check.cfg"
INTEGER045 = ReadLine(STRING042, 1)
INTEGER032 = Random(Time())
INTEGER032 = Random(INTEGER045 - 1) + 1
Tokenize ReadLine(STRING042, INTEGER032 + 1)
DispFile PPEPath() + "graph\check" + String(INTEGER032), 1 + 4
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
STRING039 = ReadLine(STRING011, 14)
INTEGER007 = 0
Gosub LABEL041
STRING017 = ""
:LABEL012
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING017))
AnsiPos INTEGER033, INTEGER034
STRING017 = ""
InputText STRING049 + "_", STRING017, 3, 70
If (STRING017 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No handle entered"
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL012
Return
Endif
INTEGER009 = U_RecNum(Upper(STRING017))
If (INTEGER009 == -1) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Unregistered user handle (" + Upper(STRING017) + ") entered"
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 33)
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL012
Return
Endif
If (BOOLEAN016) FPutLn 3, " Registered user handle (" + Upper(STRING017) + ") entered"
INTEGER007 = 0
GetAltUser INTEGER009
Gosub LABEL041
STRING019 = ""
:LABEL013
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING019))
AnsiPos INTEGER033, INTEGER034
STRING019 = ""
InputStr STRING049 + "_", STRING019, 15, 60, Mask_Pwd(), 2 + 1
If (STRING019 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No password entered"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Goto LABEL013
Return
Endif
If (Upper(STRING019) <> Upper(U_Pwd)) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Incorrect user password " + Upper(STRING019) + " entered"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 34)
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Goto LABEL013
Return
Endif
If (BOOLEAN016) FPutLn 3, " Correct user password (" + Upper(STRING019) + ") entered"
If (U_Sec > INTEGER010) Then
STRING008 = ReplaceStr(ReadLine(STRING011, 35), "%OPTEXT%", Upper(STRING068))
Gosub LABEL040
If (BOOLEAN005) Then
Tokenize STRING017
If (TokCount() > 1) Then
KbdStuff STRING017 + STRING053
If (BOOLEAN003) KbdStuff STRING053
KbdStuff STRING019 + STRING053
Goto LABEL014
Endif
KbdStuff STRING017 + STRING053 + STRING053
If (BOOLEAN003) KbdStuff STRING053
KbdStuff STRING019 + STRING053
:LABEL014
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Normally (through check login)"
Goto LABEL042
End
Endif
Return
Endif
STRING050 = ReadLine(STRING011, 36)
AnsiPos INTEGER030, INTEGER031
Tokenize ReadLine(STRING010, INT016)
PrintLn STRING050
If (GetToken() <> "YES") Then
Wait
Return
Else
Delay 10
Endif
STRING075 = ReadLine(PPEPath() + "nuv.cfg", 4)
STRING076 = ReadLine(PPEPath() + "nuv.cfg", 5)
If (STRING075 == 0) Then
STRING075 = ReadLine(PPEPath() + "graph\nuvtext", 26)
Endif
If (STRING076 == 0) Then
STRING076 = ReadLine(PPEPath() + "graph\nuvtext", 26)
Endif
STRING078 = PPEPath() + "apps\" + Replace(Left(U_Name(), 8), " ", "_")
STRING078 = Replace(STRING078, "=", "-")
STRING078 = Replace(STRING078, ",", "-")
STRING078 = Replace(STRING078, ".", "-") + ".vot"
If (Exist(STRING078)) Then
INTEGER054 = ReadLine(STRING078, 1)
INTEGER055 = ReadLine(STRING078, 2)
Else
FreshLine
DispFile PPEPath() + "graph\nuvout", 1 + 4
If (GetToken() == "YES") Hangup
Wait
Return
Endif
STRING078 = PPEPath() + "graph\nuvstat"
INTEGER056 = 1
FreshLine
STRING077 = ReadLine(STRING078, INTEGER056)
While (STRING077 <> "") Do
STRING077 = ReplaceStr(STRING077, "%YES%", String(INTEGER054))
STRING077 = ReplaceStr(STRING077, "%NO%", String(INTEGER055))
STRING077 = ReplaceStr(STRING077, "%NON%", String(STRING076))
STRING077 = ReplaceStr(STRING077, "%YESN%", String(STRING075))
PrintLn STRING077
Inc INTEGER056
STRING077 = ReadLine(STRING078, INTEGER056)
EndWhile
Wait
Return
:LABEL015
DefColor
Cls
If (BOOLEAN016) FPutLn 3, " MATRIX_FEEDBACK selected at " + String(Time())
DispFile PPEPath() + "graph\fbmsg", 1 + 4
Wait
If (BOOLEAN016) FClose 3
AdjTime INTEGER013
Tokenize "LOGON " + STRING018
Call PPEPath() + "feedback.ppe"
DefColor
StartDisp 1
If (BOOLEAN016) FAppend 3, STRING057, 1, 0
INTEGER012 = MinLeft()
If (INTEGER012 == 0) Then
AdjTime 1
ElseIf (INTEGER012 <= INTEGER013) Then
AdjTime 0 - INTEGER012 - 1
Else
AdjTime 0 - INTEGER013
Endif
Return
:LABEL016
DefColor
Cls
If (BOOLEAN016) FPutLn 3, " MATRIX_LOGIN selected at " + String(Time())
If (INTEGER021 > 0) Then
Inc INTEGER016
If (INTEGER016 > INTEGER021) Then
If (BOOLEAN016) FPutLn 3, " Excessive logon retries, exiting"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abormally"
Hangup
Endif
Endif
INTEGER045 = ReadLine(STRING041, 1)
INTEGER032 = Random(Time())
INTEGER032 = Random(INTEGER045 - 1) + 1
Tokenize ReadLine(STRING041, INTEGER032 + 1)
DispFile PPEPath() + "graph\logon" + String(INTEGER032), 1 + 4
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
If (Upper(STRING068) <> "NONE") Then
If (BOOLEAN015) Then
AnsiPos GetToken(), GetToken()
Print GetToken(), Upper(STRING068)
BOOLEAN015 = 0
Else
INTEGER007 = 0
Gosub LABEL041
STRING017 = ""
:LABEL017
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING017))
AnsiPos INTEGER033, INTEGER034
STRING017 = ""
InputStr STRING049 + "_", STRING017, 1, 70, Mask_Ascii(), 2 + 1
If (STRING017 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No system password entered"
If (INTEGER007 == INTEGER003) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering system password"
If (BOOLEAN008) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER003
Gosub LABEL038
If (BOOLEAN005) Goto LABEL017
Return
Endif
If (Upper(STRING017) <> Upper(STRING068)) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Incorrect system password (" + Upper(STRING017) + ") entered"
If (INTEGER007 == INTEGER003) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering system password"
If (BOOLEAN008) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 8)
INTEGER008 = INTEGER003
Gosub LABEL038
If (BOOLEAN005) Goto LABEL017
Return
Endif
If (BOOLEAN016) FPutLn 3, " Correct system password (", Upper(STRING068) , ") entered"
Else
AnsiPos GetToken(), GetToken()
Print GetToken(), ReadLine(STRING011, 3)
Endif
Endif
INTEGER007 = 0
Gosub LABEL041
STRING017 = ""
:LABEL018
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING017))
AnsiPos INTEGER033, INTEGER034
STRING017 = ""
InputText STRING049 + "_", STRING017, 1, 70
If (STRING017 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No handle entered"
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL018
Return
Endif
INTEGER009 = U_RecNum(Upper(STRING017))
If (INTEGER009 == -1) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Unregistered user handle (" + Upper(STRING017) + ") entered"
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 9)
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL018
Return
Endif
STRING045 = Upper(STRING017)
GetAltUser INTEGER009
INTEGER007 = 0
Gosub LABEL041
STRING017 = ""
:LABEL019
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING017))
AnsiPos INTEGER033, INTEGER034
STRING017 = ""
InputStr STRING049 + "_", STRING017, 1, 70, Mask_Ascii(), 2 + 1
If (STRING017 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No logon password entered"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering logon password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Goto LABEL019
Return
Endif
If (Upper(STRING017) <> Upper(U_Pwd)) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Incorrect user logon password (" + Upper(STRING017) + ") entered"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 1)
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL019
Return
Endif
STRING046 = Upper(STRING017)
If (BOOLEAN016) FPutLn 3, " Registered user handle (" + Upper(STRING017) + ") entered"
INTEGER012 = MinLeft()
If (INTEGER012 == 0) Then
AdjTime 1
ElseIf (INTEGER012 <= INTEGER011) Then
AdjTime 0 - INTEGER012 - 1
Else
AdjTime 0 - INTEGER011
Endif
If (INTEGER050 > 0) Then
INTEGER047 = Random(Time())
INTEGER047 = Random(INTEGER050 - 1) + 1
DispFile STRING056 + String(INTEGER047), 1 + 4
FreshLine
Else
Select Case (INTEGER050)
Case 0
AnsiPos INTEGER030, INTEGER031
Case -1
DefColor
Cls
Endif
End Select
Tokenize STRING045
If (TokCount() > 1) Then
KbdStuff STRING045 + STRING053
If (BOOLEAN003) KbdStuff STRING053
KbdStuff STRING046 + STRING053
Else
KbdStuff STRING045 + STRING053 + STRING053
If (BOOLEAN003) KbdStuff STRING053
KbdStuff STRING046 + STRING053
Endif
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Normally (through login)"
Gosub LABEL042
End
:LABEL020
DefColor
Cls
If (BOOLEAN016) FPutLn 3, " MATRIX_APPLICATION selected at " + String(Time())
If (INTEGER022 > 0) Then
Inc INTEGER017
If (INTEGER017 > INTEGER022) Then
If (BOOLEAN016) FPutLn 3, " Excessive application retries, exiting"
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Abormally"
Hangup
Endif
Endif
STRING042 = PPEPath() + "cfg\mxapply.cfg"
INTEGER045 = ReadLine(STRING042, 1)
INTEGER032 = Random(Time())
INTEGER032 = Random(INTEGER045 - 1) + 1
Tokenize ReadLine(STRING042, INTEGER032 + 1)
DispFile PPEPath() + "graph\mxapp" + String(INTEGER032), 1 + 4
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
INTEGER007 = 0
Gosub LABEL041
STRING018 = ""
INTEGER002 = 0
:LABEL021
AnsiPos INTEGER033, INTEGER034
Print Space(INTEGER002)
AnsiPos INTEGER033, INTEGER034
STRING018 = ""
InputStr STRING049 + "_", STRING018, 3, 70, Mask_AlNum() + "&- ',.", 8
INTEGER002 = Len(STRING018)
If (STRING018 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No handle entered"
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL021
Return
Endif
STRING018 = LTrim(STRING018, " ")
If (U_RecNum(Upper(STRING018)) <> -1) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Existing handle (" + Upper(STRING018) + ") entered"
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 12)
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL021
Return
Endif
FOpen 1, STRING014, 0, 0
STRING027 = ""
While (1) Do
FGet 1, STRING027
If (STRING027 == "") Break
If (Upper(STRING018) == Upper(STRING027)) Then
FClose 1
If (BOOLEAN016) FPutLn 3, " Handle (" + Upper(STRING018) + ") denied, found in trashfile"
Inc INTEGER007
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 13)
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Goto LABEL021
Return
Endif
EndWhile
FClose -1
If (BOOLEAN004) Goto LABEL022
STRING005 = TokenStr()
Tokenize STRING018
If (TokCount() < 2) Then
If (BOOLEAN016) FPutLn 3, " Handle (" + Upper(STRING018) + ") denied, no one-name allowed"
Inc INTEGER007
If (INTEGER007 == INTEGER004) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering handle"
If (BOOLEAN009) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 19)
INTEGER008 = INTEGER004
Gosub LABEL038
If (BOOLEAN005) Then
Tokenize STRING005
Goto LABEL021
Endif
Return
Endif
Tokenize STRING005
:LABEL022
FClose 1
If (BOOLEAN016) FPutLn 3, " New handle (" + Upper(STRING018) + ") entered and accepted"
If (Upper(STRING069) <> "NONE") Then
FOpen 1, PPEPath() + "apply.vip", 0, 0
STRING027 = ""
While (1) Do
FGet 1, STRING027
If (STRING027 == "") Break
If (Upper(STRING018) == Upper(STRING027)) Then
FClose 1
If (BOOLEAN016) FPutLn 3, " Handle (" + Upper(STRING018) + ") found in VIP file"
STRING050 = ReadLine(STRING011, 62)
Gosub LABEL037
Goto LABEL024
Endif
EndWhile
FClose 1
INTEGER007 = 0
Gosub LABEL041
STRING017 = ""
:LABEL023
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING017))
AnsiPos INTEGER033, INTEGER034
STRING017 = ""
InputStr STRING049 + "_", STRING017, 3, 70, Mask_Ascii(), 2 + 1
If (STRING017 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No nup entered"
If (INTEGER007 == INTEGER006) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering nup"
If (BOOLEAN011) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER006
Gosub LABEL038
If (BOOLEAN005) Goto LABEL023
Return
Endif
If (Upper(STRING017) <> Upper(STRING069)) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Wrong nup (" + Upper(STRING017) + ") entered"
If (INTEGER007 == INTEGER006) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering nup"
If (BOOLEAN011) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 11)
INTEGER008 = INTEGER006
Gosub LABEL038
If (BOOLEAN005) Goto LABEL023
Return
Endif
If (BOOLEAN016) FPutLn 3, " Correct nup (" + Upper(STRING017) + ") entered"
Else
AnsiPos GetToken(), GetToken()
Print GetToken(), ReadLine(STRING011, 3)
Endif
:LABEL024
If (BOOLEAN014) Then
DispFile STRING030, 1 + 4
Wait
Endif
STRING042 = PPEPath() + "cfg\apply.cfg"
INTEGER045 = ReadLine(STRING042, 1)
INTEGER032 = Random(Time())
INTEGER032 = Random(INTEGER045 - 1) + 1
DispFile PPEPath() + "graph\apply" + String(INTEGER032), 1 + 4
STRING019 = ""
:LABEL025
Tokenize ReadLine(STRING042, INTEGER032 + 1)
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
INTEGER007 = 0
INTEGER033 = GetToken()
INTEGER034 = GetToken()
STRING047 = GetToken()
INTEGER038 = GetToken()
INTEGER037 = GetToken()
STRING048 = GetToken()
:LABEL026
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING019))
AnsiPos INTEGER033, INTEGER034
STRING019 = ""
InputStr STRING047 + "_", STRING019, 15, 60, Mask_Pwd(), 2 + 1
STRING039 = ReadLine(STRING011, 14)
If (STRING019 == "") Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " No password entered"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = STRING039
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Goto LABEL026
Return
Endif
If (BOOLEAN016) FPutLn 3, " Password (" + Upper(STRING019) + ") entered"
If (Len(STRING019) < INTEGER049) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Password too short"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReplaceStr(ReadLine(STRING011, 15), "%OPTEXT%", String(INTEGER049))
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Goto LABEL026
Return
Goto LABEL026
Endif
If (Psa(4)) Then
Tokenize STRING018
STRING016 = GetToken()
While (STRING016 <> "") Do
If (InStr(Upper(STRING019), Upper(STRING016))) Goto LABEL027
STRING016 = GetToken()
EndWhile
If (InStr(Upper(STRING018), Upper(STRING019)) <> 0) Then
:LABEL027
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Password (" + Upper(STRING019) + ") denied, subset of handle (" + Upper(STRING018) + ")"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 16)
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Goto LABEL025
Return
Endif
Tokenize ReadLine(STRING042, INTEGER032 + 1)
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
INTEGER007 = 0
INTEGER033 = GetToken()
INTEGER034 = GetToken()
STRING047 = GetToken()
INTEGER038 = GetToken()
INTEGER037 = GetToken()
STRING048 = GetToken()
Endif
AnsiPos INTEGER038, INTEGER037
STRING020 = ""
InputStr STRING048 + "_", STRING020, 1, 60, Mask_Pwd(), 2 + 1
If (Upper(STRING019) <> Upper(STRING020)) Then
Inc INTEGER007
If (BOOLEAN016) FPutLn 3, " Password (" + Upper(STRING019) + ") does not verify (" + Upper(STRING020) + ")"
If (INTEGER007 == INTEGER005) Then
If (BOOLEAN016) FPutLn 3, " Excessive retries entering password"
If (BOOLEAN010) Hangup
INTEGER007 = 0
Return
Endif
STRING008 = ReadLine(STRING011, 17)
INTEGER008 = INTEGER005
Gosub LABEL038
If (BOOLEAN005) Then
AnsiPos INTEGER038, INTEGER037
Print Space(Len(STRING020))
STRING020 = ""
Goto LABEL026
Endif
Return
Endif
Gosub LABEL041
:LABEL028
AnsiPos INTEGER033, INTEGER034
InputStr STRING049 + "_", STRING022, 1, 60, Mask_Alpha() + "- ", 2
If (STRING022 == "") Then
STRING008 = STRING039
Gosub LABEL040
If (BOOLEAN005) Goto LABEL028
If (BOOLEAN016) FPutLn 3, " Apply aborted (CITY) at " + String(Time())
Return
Endif
Gosub LABEL041
:LABEL029
AnsiPos INTEGER033, INTEGER034
InputStr STRING049 + "_", STRING025, 15, 60, Mask_Num() + "-()+ ", 2
If (STRING025 == "") Then
STRING008 = STRING039
Gosub LABEL040
If (BOOLEAN005) Goto LABEL029
If (BOOLEAN016) FPutLn 3, " Apply aborted (DATAPHONE) at " + String(Time())
Return
Endif
Gosub LABEL041
:LABEL030
STRING026 = ""
AnsiPos INTEGER033, INTEGER034
InputStr STRING049 + "_", STRING026, 15, 60, Mask_Num() + "-()+ ", 2
If (STRING026 == "") Then
STRING008 = STRING039
Gosub LABEL040
If (BOOLEAN005) Goto LABEL030
If (BOOLEAN016) FPutLn 3, " Apply aborted (VOICEPHONE) at " + String(Time())
Return
Endif
Gosub LABEL041
:LABEL031
STRING028 = ""
AnsiPos INTEGER033, INTEGER034
InputStr "_", STRING028, 15, 60, Mask_Ascii(), 2
If (STRING028 == "") Then
STRING008 = STRING039
Gosub LABEL040
If (BOOLEAN005) Goto LABEL031
If (BOOLEAN016) FPutLn 3, " Apply aborted (CPU) at " + String(Time())
Return
Endif
Gosub LABEL041
:LABEL032
AnsiPos INTEGER033, INTEGER034
STRING029 = YesChar()
InputYN "", STRING029, 15
If (STRING029 == "") Then
STRING008 = STRING039
Gosub LABEL040
If (BOOLEAN005) Goto LABEL032
If (BOOLEAN016) FPutLn 3, " Apply aborted (CLEARSCREEN) at " + String(Time())
Return
Endif
If (Psa(3)) Then
STRING042 = PPEPath() + "cfg\address.cfg"
INTEGER045 = ReadLine(STRING042, 1)
INTEGER032 = Random(Time())
INTEGER032 = Random(INTEGER045 - 1) + 1
Tokenize ReadLine(STRING042, INTEGER032 + 1)
DispFile PPEPath() + "graph\addr" + String(INTEGER032), 1 + 4
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
AnsiPos GetToken(), GetToken()
InputStr GetToken() + "_", STRING032, 15, 60, Mask_Ascii(), 2
AnsiPos GetToken(), GetToken()
InputStr GetToken() + "_", STRING033, 15, 60, Mask_Ascii(), 2
AnsiPos GetToken(), GetToken()
InputStr GetToken() + "_", STRING023, 15, 60, Mask_Ascii(), 2
AnsiPos GetToken(), GetToken()
InputStr GetToken() + "_", STRING034, 15, 60, Mask_Ascii(), 2
AnsiPos GetToken(), GetToken()
InputStr GetToken() + "_", STRING036, 15, 60, Mask_Ascii(), 2
AnsiPos GetToken(), GetToken()
InputStr GetToken() + "_", STRING037, 15, 60, Mask_Ascii(), 2
Endif
If (Psa(2)) Then
STRING042 = PPEPath() + "cfg\maiden.cfg"
INTEGER045 = ReadLine(STRING042, 1)
INTEGER032 = Random(Time())
INTEGER032 = Random(INTEGER045 - 1) + 1
Tokenize ReadLine(STRING042, INTEGER032 + 1)
DispFile PPEPath() + "graph\maid" + String(INTEGER032), 1 + 4
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
Gosub LABEL041
STRING038 = ""
:LABEL033
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING038))
AnsiPos INTEGER033, INTEGER034
STRING038 = ""
InputStr STRING049 + "_", STRING038, 15, 60, Mask_Ascii(), 2
If (STRING038 == "") Then
STRING008 = STRING039
Gosub LABEL040
If (BOOLEAN005) Goto LABEL033
If (BOOLEAN016) FPutLn 3, " Apply aborted (MAIDEN) at " + String(Time())
Return
Endif
Endif
BOOLEAN019 = 0
If (ReadLine(PCBDat(), 269) == "0") BOOLEAN019 = 1
If (BOOLEAN019) Then
Call PPEPath() + "doprot.ppe"
STRING006 = ReadLine(PPEPath() + "work\prottmp." + String(PcbNode()), 1)
If (BOOLEAN016) FPutLn 3, " Protocol (" + String(STRING006) + ") selected"
Endif
BOOLEAN002 = 0
If (Psa(1)) Then
If (ReadLine(PCBDat(), 270) == "-1") Then
Goto LABEL036
Endif
STRING001 = ReadLine(PCBDat(), 32)
STRING003 = ReadLine(STRING001, 1)
INTEGER001 = 1
BOOLEAN001 = 0
While (1) Do
If (STRING003 == "") Break
STRING003 = Replace(STRING003, ",", " ")
Tokenize STRING003
STRING002 = GetToken()
If (STRING002 <> "") Then
Goto LABEL034
Endif
STRING002 = GetToken()
If (INTEGER010 == ToInteger(STRING002)) Then
For INTEGER045 = 1 To 9
STRING002 = GetToken()
Next
STRING002 = GetToken()
BOOLEAN001 = 1
Break
Endif
:LABEL034
Inc INTEGER001
STRING003 = ReadLine(STRING001, INTEGER001)
EndWhile
If (BOOLEAN001) Goto LABEL035
DefColor
Cls
PrintLn "ERROR: User security not found in PWRD file"
PrintLn "Leave feedback at the matrix telling the sysop that the"
PrintLn "Security file is incorrect"
Wait
If (BOOLEAN016) FPutLn 3, " Security not found (" + String(INTEGER010) + ") in PWRD"
Return
Goto LABEL036
:LABEL035
If (Upper(STRING002) == "Y") Then
BOOLEAN002 = 1
STRING042 = PPEPath() + "cfg\alias.cfg"
INTEGER032 = Random(ToInteger(ReadLine(STRING042, 1)) - 1) + 1
DispFile PPEPath() + "graph\alias" + String(INTEGER032), 1 + 4
Tokenize ReadLine(STRING042, INTEGER032 + 1)
INTEGER030 = GetToken()
INTEGER031 = GetToken()
STRING044 = GetToken()
INTEGER033 = GetToken()
INTEGER034 = GetToken()
STRING017 = ""
AnsiPos INTEGER030, INTEGER031
Print ReadLine(STRING011, 18)
AnsiPos INTEGER033, INTEGER034
Print Space(Len(STRING017))
AnsiPos INTEGER033, INTEGER034
STRING017 = ""
InputText STRING049 + "_", STRING017, 3, 70
If (STRING017 <> "") Then
STRING004 = STRING017
Endif
Goto LABEL036
Endif
BOOLEAN002 = 0
Endif
:LABEL036
If (BOOLEAN016) FClose 3
FCreate 1, STRING040, 1, 0
FPut 1, STRING018
FClose 1
Call PPEPath() + "infoform.ppe"
Delete STRING040
DefColor
StartDisp 1
Gosub LABEL015
If (BOOLEAN016) FAppend 3, STRING057, 1, 0
If (BOOLEAN016) FPutLn 3, " All new user information entered and saved at " + String(Time())
INTEGER012 = MinLeft()
If (INTEGER012 == 0) Then
AdjTime 1
ElseIf (INTEGER012 <= INTEGER011) Then
AdjTime 0 - INTEGER012 - 1
Else
AdjTime 0 - INTEGER011
Endif
KbdStuff STRING018 + STRING053 + STRING053 + STRING053 + STRING053
KbdStuff STRING019 + STRING053 + STRING020 + STRING053 + STRING022 + STRING053 + STRING025 + STRING053 + STRING026 + STRING053 + STRING028 + STRING053 + STRING029 + STRING053
If (BOOLEAN019) Then
KbdStuff STRING006 + STRING053
Endif
If (BOOLEAN002) Then
KbdStuff STRING004 + STRING053
Endif
If (Psa(3)) KbdStuff STRING032 + STRING053 + STRING033 + STRING053 + STRING023 + STRING053 + STRING034 + STRING053 + STRING036 + STRING053 + STRING037 + STRING053
If (Psa(2)) KbdStuff STRING038 + STRING053
If (BOOLEAN016) FPutLn 3, String(Date()) + " (" + String(Time()) + ") (" + STRING070 + ") " + "Off Normally (through application)"
Gosub LABEL042
End
:LABEL037
AnsiPos INTEGER030, INTEGER031
Print STRING050
INTEGER035 = GetX()
INTEGER036 = GetY()
Delay 36
AnsiPos INTEGER030, INTEGER031
Print Space(INTEGER035 - INTEGER030)
Return
:LABEL038
AnsiPos INTEGER030, INTEGER031
BOOLEAN005 = 1
If (BOOLEAN012) Goto LABEL039
STRING015 = ReadLine(STRING011, 31)
BOOLEAN012 = 1
:LABEL039
STRING043 = Upper(YesChar())
InputYN STRING044 + STRING008 + ReplaceStr(STRING015, "%OPTEXT%", String(INTEGER008 - INTEGER007)), STRING043, 1
INTEGER035 = GetX()
INTEGER036 = GetY()
AnsiPos INTEGER030, INTEGER031
Print Space(INTEGER035 + 2 - INTEGER030)
Select Case (Upper(STRING043))
Case Upper(YesChar())
Return
Case Upper(NoChar())
BOOLEAN005 = 0
Return
End Select
Return
:LABEL040
AnsiPos INTEGER030, INTEGER031
BOOLEAN005 = 1
STRING043 = Upper(YesChar())
InputYN STRING044 + STRING008, STRING043, 1
INTEGER035 = GetX()
INTEGER036 = GetY()
AnsiPos INTEGER030, INTEGER031
Print Space(INTEGER035 + 2 - INTEGER030)
Select Case (Upper(STRING043))
Case Upper(YesChar())
Return
Case Upper(NoChar())
BOOLEAN005 = 0
Return
End Select
Return
:LABEL041
INTEGER033 = GetToken()
INTEGER034 = GetToken()
STRING049 = GetToken()
Return
:LABEL042
ShowOff
RestScrn
ShowOn
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 7 End
; 10 Cls
; 9 Wait
; 326 Goto
; 422 Let
; 32 Print
; 15 PrintLn
; 354 If
; 20 DispFile
; 1 FCreate
; 2 FOpen
; 9 FAppend
; 14 FClose
; 2 FGet
; 1 FPut
; 86 FPutLn
; 12 StartDisp
; 31 Hangup
; 5 GetUser
; 23 DefColor
; 1 Delete
; 15 AdjTime
; 18 InputStr
; 6 InputYN
; 51 Gosub
; 60 Return
; 4 Delay
; 29 Inc
; 13 Newline
; 26 Tokenize
; 4 InputText
; 18 KbdStuff
; 9 Call
; 58 AnsiPos
; 3 FreshLine
; 7 SaveScrn
; 8 RestScrn
; 1 ShowOn
; 1 ShowOff
; 4 Redim
; 2 GetAltUser
;
;
; ■ Functions used :
;
; 5 -
; 1 *
; 363 +
; 30 -
; 110 ==
; 22 <>
; 10 <
; 11 <=
; 21 >
; 16 >=
; 192 !
; 16 &&
; 13 ||
; 12 Len(
; 108 Upper()
; 1 Left()
; 14 Space()
; 2 Chr()
; 2 InStr()
; 1 LTrim()
; 23 Random()
; 13 Date()
; 37 Time()
; 2 U_Name()
; 2 NoChar()
; 10 YesChar()
; 6 StripAtx()
; 5 Replace()
; 1 Inkey()
; 71 String()
; 3 Mask_Pwd()
; 1 Mask_Alpha()
; 2 Mask_Num()
; 1 Mask_AlNum()
; 11 Mask_Ascii()
; 7 PCBDat()
; 53 PPEPath()
; 2 PcbNode()
; 98 ReadLine()
; 1 OnLocal()
; 105 GetToken()
; 3 MinLeft()
; 7 Exist()
; 1 Carrier()
; 1 TokenStr()
; 8 LangExt()
; 1 AnsiOn()
; 5 GetX()
; 5 GetY()
; 1 GrafMode()
; 6 Psa()
; 3 LoggedOn()
; 5 TokCount()
; 3 U_RecNum()
; 1 ScrText()
; 7 ReplaceStr()
; 2 ToInteger()
;
;------------------------------------------------------------------------------
;
; Analysis flags : RABCdH
;
; R - Read user ■ 5
; User records are read, this may signify that someone wants to get
; various informations about a user (for example his password), but
; this may also be normal for a program accessing user records (for
; example a User Editor)
; ■ Search for : GETALTUSER
;
; A - Adjust online time remaining ■ 5
; Program modify the amount of online time remaining, this may
; be a way to bypass time limits
; ■ Search for : ADJTIME
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
; H - Read Password or Password History ■ 5
; Program is reading the user's password or last password history
; This may be ok for a password manager, but it is very suspect. Check!
; ■ Search for : U_PWDHIST, U_PWD
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 7 For/Next
; 5 While/EndWhile
; 136 If/Then or If/Then/Else
; 7 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------